////重载匹配的优先级
//#include <iostream>
//
//using namespace std;
//
//void foo(char *c, short s) {                 //完全匹配
//    cout << "1.foo(char*,short)" << endl;
//}
//
//void foo(const char *c, short s) {          //常量转换
//    cout << "2.foo(const char* ,short" << endl;
//}
//
//void foo(char *c, int s) {                  //升级转换
//    cout << "3.foo(char* ,int)" << endl;
//}
//
//void foo(char *c, char s) {
//    cout << "4.foo(char*,char)" << endl; //标准转换
//}
//
//void foo(...) {                         //省略号匹配
//    cout << "5.foo(...)" << endl;
//}
//
//int main(void) {
//    char *c;
//    short s;
//    foo(c, s);//普通方式调用重载关系的函数，根据实参类型和形参类型匹配，来确定调用哪一个foo
//    void (*pfunc)(const char *, short) = foo;//
//    pfunc(c, s); //函数指针方式调用重载关系的函数，根据函数指针本身的类型，来确定调用哪一个foo
//    return 0;
//}